warriorjs

javascript를 게임을 하듯이 배우고 싶은 사람들이 있을 거라고 생각합니다.

먼저 클릭해서 감상부터 해 보시죠.

해당 작업을 하는 소스는 다음과 같습니다.

class Player {  
playTurn(warrior) {  
// Cool code goes here  
warrior.walk("forward");  
}  
}

2016/07/01 Today’s Best

olistic/warriorjs
_warriorjs - Game written in JavaScript for learning JavaScript and artificial intelligence._github.com


위의 asciinema를 플레이 해 보신 분이라면 마지막에 다음 레벨로 갈꺼냐고 묻는 gamification도 적용되어 있습니다.

마치 해킹 사이트에서 다음 단계로 가려면 문제를 푸세요. 라고 하는 방식과 똑같습니다.

다음단계로 가겠다고 하니 README 파일이 바뀌네요.

두번째 문제네요.

Level 2

It is too dark to see anything, but you smell sludge nearby.

Tip: Use \`warrior.feel().isEmpty()\` to see if there is anything in front of you, and \`warrior.attack()\` to fight it. Remember, you can only do one action per turn.

╔════════╗  
║@ s \> ║  
╚════════╝

\> = stairs  
@ = keen

Warrior abilities:

warrior.walk()

warrior.attack() (NEW!)

warrior.feel() (NEW!)

어떻게 풀면 좋을까요?

warrior.feel().isEmpty()

를 활용하면 좋을 거 같군요.

class Player {  
playTurn(warrior) {  
if(warrior.feel().isEmpty())warrior.walk("forward");  
else warrior.attack();  
}  
}

이랬더니 아래와 같이 움직입니다.

어흑 진짜 재밌네요. 저는 적을 만나면 부셨는데, left,right을 이용하면 우회해서 올라갈 수도 있겠네요.

올라가다 보면 움직이는 적도 나오겠네요.

이걸 왜 만들었는지는 모르겠지만, 상당히 재밌네요.

강추~

By Keen Dev on July 1, 2016.

Exported from Medium on May 31, 2017.